#ifndef __LOG_H__
#define __LOG_H__
#include "main.h"

void log_printf(char *fmt, ...);


#ifndef LOG_LEVEL
#define LOG_LEVEL LOG_DEBUG
#endif

#define LOG_NONE_V		0
#define LOG_ERROR_V		1
#define LOG_WARNING_V	2
#define LOG_INFO_V		3
#define LOG_DEBUG_V		4


#if	LOG_LEVEL >= LOG_ERROR
#define LOG_ERROR(fmt, ...)	log_printf(fmt, ##__VA_ARGS__)
#else
#define LOG_ERROR(fmt, ...)	{}
#endif

#if	LOG_LEVEL >= LOG_WARNING
#define LOG_WARNING(fmt, ...)	log_printf(fmt, ##__VA_ARGS__)
#else
#define LOG_WARNING(fmt, ...)	{}
#endif


#if	LOG_LEVEL >= LOG_INFO
#define LOG_INFO(fmt, ...)	log_printf(fmt, ##__VA_ARGS__)
#else
#define LOG_INFO(fmt, ...)	{}
#endif

#if	LOG_LEVEL >= LOG_DEBUG
#define LOG_DEBUG(fmt, ...)	log_printf(fmt, ##__VA_ARGS__)
#else
#define LOG_DEBUG(fmt, ...)	{}
#endif
	
#endif

